package com.link.play.fit.ai.bean

import com.link.play.fit.ai.kv.AuthCache.firstMeals
import com.link.play.fit.ai.kv.AuthCache.secondMeals
import com.link.play.fit.ai.kv.AuthCache.thirdMeals
import com.link.play.fit.ai.utils.convertKgToLbs
import java.io.Serializable


/**
 * 用户引导流程获取的数据
 */
data class UserGuide(
    var id: Int = 0,//用来更新值

    var gender: Int = -1,//0 male ; 1 female ; 0 other/male
    var bornYear: Int = 2012,
    var bornMonth: Int = 1,
    var bornDay: Int = 1,
    var age: Int = 0,

    var workouts: Int = -1,//0(0-2);1 (3-5);2(6+) //锻炼频率
    var calApp: Int = -1,//  0 no ; 1 yes

    var imperialMetric: Boolean = true,//false Imperial 英制; true Metric 公制
    var heightFt: Int = 5,//身高英尺部分
    var heightIn: Int = 5,//身高高英寸部分
    var heightCm: Int = 165,//身高cm

    var goal: Int = -1,// 0 gain ; 1 maintain ; 2 lose
    var weightKg: Int = 54,//原来体重kg
    var goalWeightKg: Int = 0,//目标体重kg
    var weightLbs: Int = 119,//原来体重lbs
    var goalWeightLbs: Int = 0,//目标体重lbs

    var perWeightKg: Float = 1.0f,//每周体重变化的值kg
    var perWeightLbs: Float = convertKgToLbs(perWeightKg.toInt()).toFloat(),//每周体重变化的值lbs

    var stopGoal: Int = -1,//0 Lack of consistency;1 Unhealthy eating habits; 2 Lack of supports; 3 Busy schedule ; 4: Lack of meal inspiration
    var diet: Int = -1,//0 classic; 1 Pescatarian ; 2 Vegetarian ; 3 Vegan
    var accomplish: Int = -1,//0 eat; 1 boost ; 2; consistent ;3 feel better
    var mealsTime: List<String> = listOf(firstMeals, secondMeals, thirdMeals),

    var bmr: Int = -1,//每日基础代谢
    var caloriesDaily: Int = 0,//每日摄入卡路里
    var carbsDaily: Int = 0,//每日摄入碳水
    var proteinDaily: Int = 0,//每日摄入蛋白质
    var fatsDaily: Int = 0,//每日摄入脂肪

    var score: Int = 7,
    var perWeightLbsC: Float = 0f,//每周体重变化的值lbs

    var dataReady: Boolean = false,

    var needPersonalTrain: Int = -1,//是否需要训练计划，0不需要，1需要
    var haveWeighControlPlan: Boolean = false,//是否有体重控制计划
    var weighControlMethod: Int = -1,//0断食 1卡路里控制
    var fastingGoal: Int = -1,//断食目标 0 12+12； 1 14+10 ;  2 16+8
    var fastingStartTime: String = "",//断食开始时间

    var planStartTime: String = "",//健身计划开始时间
    var subEndTime: String = "",//订阅结束时间

    var planProductEndTime: String = "",//内购商品结束时间

    var planId: String = "",//健身计划uid

    var isAppPurchaseVip: Boolean = false,//是否单独购买健身计划


) : Serializable
